///******************************************************************************* // * Copyright (c) 2006 IBM Corporation and others. // * All rights reserved. This program and the accompanying materials // * are made available under the terms of the Eclipse Public License v1.0 // * which accompanies this distribution, and is available at // * http://www.eclipse.org/legal/epl-v10.html // * // * Contributors: // * IBM Corporation - initial API and implementation // ******************************************************************************/ // //package org.eclipse.ui.tests.api; // //import java.util.HashSet; //import java.util.Set; // //import org.eclipse.core.resources.IProject; //import org.eclipse.core.runtime.CoreException; //import org.eclipse.ui.IEditorPart; //import org.eclipse.ui.IViewPart; //import org.eclipse.ui.IWorkbenchPage; //import org.eclipse.ui.IWorkbenchPart; //import org.eclipse.ui.ide.IDE; //import org.eclipse.ui.intro.IIntroPart; //import org.eclipse.ui.testing.IWorkbenchPartTestable; //import org.eclipse.ui.tests.harness.util.FileUtil; //import org.eclipse.ui.tests.harness.util.UITestCase; // ///** // * @since 3.3 // * // */ //public class IWorkbenchPartTestableTests extends UITestCase { // // /** // * @param testName // */ // public IWorkbenchPartTestableTests(String testName) { // super(testName); // } // // /** // * Iterate over all parts to ensure that they all return a part testable // * that contains a real composite. // */ // public void testGetComposite() throws CoreException { // IWorkbenchPage page = openTestWindow(IDE.RESOURCE_PERSPECTIVE_ID) // .getActivePage(); // assertNotNull(page); // // IProject proj = FileUtil.createProject("testIWorkbenchPartTestable"); // // assertNotNull(IDE // .openEditor(page, FileUtil.createFile("foo.txt", proj))); // assertNotNull(IDE.openEditor(page, FileUtil.createFile( // "foo.properties", proj))); // assertNotNull(IDE.openEditor(page, FileUtil // .createFile("foo.java", proj))); // assertNotNull(IDE // .openEditor(page, FileUtil.createFile("foo.xml", proj))); // // IEditorPart editors[] = page.getEditors(); // Set encounteredControls = new HashSet(); // testParts(editors, encounteredControls); // // IViewPart views[] = page.getViews(); // testParts(views, encounteredControls); // // IIntroPart intro = page.getWorkbenchWindow().getWorkbench() // .getIntroManager().showIntro(page.getWorkbenchWindow(), false); // testParts(new IIntroPart [] { intro }, encounteredControls); // // encounteredControls.clear(); // } // // /** // * @param parts // * @param encounteredControls // */ // private void testParts(Object[] parts, Set encounteredControls) { // for (int i = 0; i < parts.length; i++) { // String title = null; // IWorkbenchPartTestable testable = null; // if (parts instanceof IWorkbenchPart[]) { // testable = (IWorkbenchPartTestable) ((IWorkbenchPart) parts[i]) // .getSite().getAdapter(IWorkbenchPartTestable.class); // title = ((IWorkbenchPart) parts[i]).getTitle(); // } else { // testable = (IWorkbenchPartTestable) ((IIntroPart) parts[i]) // .getIntroSite() // .getAdapter(IWorkbenchPartTestable.class); // title = ((IIntroPart) parts[i]).getTitle(); // } // assertNotNull(title + " has null testable", testable); // assertTrue(title + " has previously encountered control", // encounteredControls.add(testable.getControl())); // } // } //}